home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 2000 March: Reference Library / Dev.CD Mar OO RLDisk 1.toast / pc / what's new / development kits / hardware / mac os usb ddk 1.4f3 / mac os usb ddk readme < prev   
Encoding:
Text File  |  2000-01-19  |  16.6 KB  |  359 lines

  1.  ***
  2.  ***       Universal Serial Bus(tm) (USB) for the Mac OS
  3.  ***    Mac OS USB 1.4f3 DDK Developer Release Notes
  4.  ***    Copyright 1998 Apple Computer, Inc.
  5.  ***
  6.  
  7.   *** IMPORTANT *** IMPORTANT *** IMPORTANT *** IMPORTANT ***
  8.  
  9. The USB Support and USB Device Extension files may not be distributed 
  10. in any manner.  These files are for developer use only, and are NOT
  11. TO BE INCLUDED with the components installed with your product.
  12.  
  13.  
  14.  Table of Contents:
  15. -------------------------------------------------------------
  16.  Changes in Mac OS USB -> 1.4f3
  17.  System Requirements for USB 1.4f3
  18.  USB Fundamentals
  19.  Keeping up to date on Mac OS USB
  20.  Getting started with Mac OS USB
  21.  Installing the Mac OS USB Software
  22.  Using the Mac OS USB DDK under MPW
  23.  Using the Mac OS USB DDK with MetroWerks CodeWarrior
  24.  Installing the Mac OS USB DDK for CodeWarrior for the First Time  
  25.  Updating a Previously Installed Mac OS USB DDK for CodeWarrior
  26.  Using the CodeWarrior Project Files
  27.  Description of Installed Files
  28.  Known Problems and Issues
  29.  Contact / Marketing Information
  30. -------------------------------------------------------------
  31.  
  32. Changes in Mac OS USB -> 1.4
  33. ------------------------------
  34.  
  35. Refer to the document "Mac OS USB 1.4f3 Readme" in the Documentation folder for a description of the changes between versions of USB. 
  36.  
  37. This DDK requires that you have the Universal Interfaces and Libraries 3.3 installed in your development environment. You can obtain these files from the Apple Developer Connection DDK web page - 
  38.  
  39. <http://developer.apple.com/sdk/index.html>
  40.  
  41. The two common symptoms that you have not yet installed these files will be:
  42. 1. There is a compile time error that the header file "MacErrors.h" could not be found
  43. 2. There is a link error that the file HIDLib could not be found.
  44.  
  45. Both files are included with Universal Interfaces and Libraries 3.3.
  46.  
  47.  
  48. System Requirements for USB 1.4f3
  49. ---------------------------------
  50.  
  51. Apple is formally qualifying USB 1.4f3 on the Macintosh systems with built-in USB and SSW 9.0 installed. You can also test with Mac OS 8.6, however, USB Audio devices are not supported except with Mac OS 9.0 and only on Macintosh systems with built-in USB. Mac OS USB 1.4f3 will also work with Power Macintosh systems with OHCI-based USB PCI or USB Cardbus cards installed. To test with USB v1.4f3, first install Mac OS 8.6 or 9.0 onto your system, then follow the instructions below.
  52.  
  53.  
  54. USB Fundamentals
  55. ----------------
  56.  
  57. For the current generation of Power Macintosh systems, USB is the primary interface for connections to low to medium speed peripheral devices. There are numerous advantages for adopting the USB standard on Macintosh, and they are discussed in the "Mac OS USB DDK API Reference Guide". On the current Macintosh systems there is no ADB or Serial Port connections. USB is be the primary port for connecting low/medium speed peripheral devices to the Macintosh. 
  58.  
  59. The DDK provides the tools, interfaces, system files, and module examples for you to start development of USB products for the Macintosh. 
  60.  
  61.  
  62. Keeping up to date on Mac OS USB
  63. --------------------------------
  64.  
  65. To stay abreast with developments on Mac OS USB, check out the Mac OS USB Developer web site for the latest information. As updates to Mac OS USB occur, development releases of the software will be made available from this web site. The URL for the web site is:
  66.  
  67. <http://developer.apple.com/dev/usb>
  68.  
  69. You can also subscribe to the Mac OS USB Developer mailing list where development questions regarding Mac OS USB are posed and answered. To submit a question to the mailing list you must first be a subscriber. To subscribe to the mailing list, send an email with the subject field set to "subscribe usb" (omit the double quotes for the message) to requests@isg.apple.com.
  70.  
  71. Use the following URL to accomplish this.
  72.  
  73. <mailto:requests@isg.apple.com?SUBJECT=subscribe usb>
  74.  
  75. USB Alerts to developers are always posted to the mailing list. These alerts are also posted to the Mac OS USB Developer Web site at the following location.
  76.  
  77. http://developer.apple.com/dev/usb/devalerts.html
  78.  
  79.  
  80. Getting started with Mac OS USB
  81. -------------------------------
  82.  
  83. To develop with Mac OS USB v1.4, you will need a Power Macintosh system with USB built in, or a USB PCI card installed.  This release of Mac OS USB also support USB Cardbus card on PowerBook G3 Series system. You should also have SSW 8.6 or greater installed.
  84.  
  85. USB v1.4 will support PCI USB cards from several vendors. The enclosed software is for developmental purposes and will support USB PCI cards from other vendors, but it is not directly supported by Apple, nor is it intended for end-users. End-user customers are encouraged to download the standalone USB Adapter Card Support Installer rather than use the extensions provided in this DDK. 
  86.  
  87. You may find that development on a Power Mac system with a USB PCI card and serial port, is easier, as you can use the Power Mac Debugger with a second Power Macintosh system. A Power Macintosh system with ADB keyboard is useful for debugging with Macsbug, since there are cases when the system cannot process keystrokes from a USB keyboard.
  88.  
  89.  
  90. Installing the Mac OS USB Software
  91. ----------------------------------
  92.  
  93. Before using the enclosed software on a Macintosh system with built-in USB you must already have the Mac OS USB 8.6 or greater present. If the Mac OS ROM file includes this release of USB, do not install the system extension components from this DDK to the Extensions Folder.
  94.  
  95. To install the USB System Software components, 
  96. 1. remove all files with the following names from your Extensions Folder, 
  97.  
  98.      USB Support,
  99.   USB Device Extension,
  100.   USBCompositeDriver,
  101.   USBFamilyExpert,
  102.   USBHIDKeyboardModule,
  103.   USBHIDMouseModule,
  104.   USBHIDUniversalModule,
  105.   USBHubDriver0,
  106.   USBHubDriver1,
  107.   USBOpenHCIDriver,
  108.   USBPrintDriver,
  109.   USBCommClass,
  110.   SerialShimLib,
  111.   HID Library,
  112.   USB Software Locator,
  113.   USB Power Class,
  114.   USB Mass Storage Extension,
  115.   USB Mass Storage Support
  116.  
  117. 2. drag copy the contents of the folder
  118.  
  119.    :Extensions-AppleBuilt: 
  120.  
  121. to the Extensions folder.
  122.  
  123. 3. Before you reboot, modify the file "USB Support" to include a new resource 'usbx' (Resource ID = 1984).  Without this resource, this release of USB will not load. The following alert is raised to indicate that the resource is not present.
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137. 4. Reboot your system after making this modification.
  138.  
  139.  
  140. Important Notes on Installation and Use of this DDK software
  141. ------------------------------------------------------------
  142.  
  143. This DDK will let you look at the sources to some working class drivers, build the examples, and develop & build your own code.
  144.  
  145. Please remember that these driver samples are Copyright Apple Computer, Inc.. You may use the supplied code to develop Class Drivers for your devices. As for publishing the source code, please
  146. check first with the Mac OS USB DDK License agreement, included in this DDK.
  147.  
  148. The current driver samples may, reflect the latest state of the art of driver writing for USB in the Mac OS. Note that the PrinterClassModule and the USBSampleStorageDriver samples are for example purpose only. These samples are the basis for the real drivers, however we are unable to provide the actual class driver code. The remaining examples are the real code for the Keyboard HID, Mouse HID, Universal HID, and Composite class drivers which will ship on the iMac
  149.  
  150. While not extensively tested (by the development team), the sample sources have been tweaked slightly to make builds under CodeWarrior some what less problematic. The project files 
  151. are provided to help jumpstart your development process.
  152.  
  153.  
  154. Using the Mac OS USB DDK under MPW
  155. ----------------------------------
  156.  
  157. For previous releases of the USB DDK, we provided a current UserStartup•USBDDK and makefiles for each of the sample class drivers. As there are very few developers who program with the MPW environment and to expidite the release of this DDK, we do not provide make files for the class driver samples, nor UserStartup files for MPW.
  158.  
  159. If MPW is your primary development platform and you need a make file for one of the example class drivers, submit a request to the Mac OS USB mailing list and a sample make file, if available for the example, will be sent to you. See the section "Keeping up to date on Mac OS USB" above for information on how to subscribe to the Mac OS USB Developer mailing list.
  160.  
  161. If you do use MPW, you must update your libraries and Interfaces to Universal Interfaces and Libraries v3.3b1 or later.
  162.  
  163.  
  164. Using the Mac OS USB DDK with MetroWerks CodeWarrior
  165. ---------------------------------------------------
  166.  
  167. We have supplied MetroWerks CodeWarrior project files for all of the USB Modules code examples. All of the project files were created using CodeWarrior Pro 1, IDE 2.0. The 
  168. project files are also compatible with CodeWarrior Pro IDE 2.1, 3.0 and later.
  169.  
  170. For the CodeWarrior IDE environments v2.0 - v3.0, you must use the Universal Interface & Libraries v3.3b1. The examples will not build using the interfaces supplied with the CodeWarrior 2.0 - v5.0 environments. The URL for the Developer Development Kits web page is
  171.    
  172.    <http://developer.apple.com/sdk/>
  173.  
  174. As mentioned for MPW, it is highly recommend that you use one Macintosh for coding purposes and one Mac (aka "Target" system) for checkout/testing purposes.
  175.  
  176. The supplied project files will place the built drivers and extensions into the Target folder of the DDK.
  177.  
  178. If your driver is not immediately recognized, check the PPC Linker settings panel that 
  179.  
  180.  
  181. Installing the Mac OS USB DDK for CodeWarrior for the First Time
  182. -----------------------------------------------------------
  183.  
  184. 1. You can place the Mac_OS_USB_DDK anywhere on your development
  185.    system for the CodeWarrior environment. The access paths
  186.    for the project files are project and compiler relative.
  187.    If you move the examples folders out of the DDK, you must
  188.    fix the access paths so that the sources can be found.
  189.   
  190. 2. Ensure that the CodeWarrior IDE environment has at least the 
  191.    Universal Interfaces and Libraries 3.3b1 installed. The
  192.    download file from the DDK website includes instructions
  193.    for upgrading your CodeWarrior environment. Note that if
  194.    you upgrade your interfaces, you will also need to 
  195.    upgrade your precompiled headers. The supplied CodeWarrior
  196.    project files do not use precompiled headers.
  197.  
  198. 3. Copy the USB.h file included in this SDK to the 
  199.    ":Mac OS Support:Headers:Universal Headers:" folder.
  200.  
  201. 4. You will find that the project files will place the built drivers
  202.    and extensions into the folder.
  203.  
  204.     ":Extensions-MCWBuilt"
  205.  
  206.    If this folder does not exist, or the folder name is different,
  207.    the class driver samples will be created in the CodeWarrior folder.
  208.  
  209. Updating a Previously Installed Mac OS USB DDK for CodeWarrior
  210. -------------------------------------------------------------
  211. 0. Ensure that you have the Universal Insterface & Libraries 3.3b1 installed
  212.    in your CodeWarrior environment.
  213.  
  214. 1. Copy the files USB.h and HID.h included in this SDK to the 
  215.    ":Mac OS Support:Headers:Universal Headers:" folder. Do not
  216.    use these header files from an earlier USB DDK with the
  217.    supplied project files, as the examples may not build.
  218.  
  219. 2. If you experience compiler errors with the program samples,
  220.    check whether you have updated the USB.h and HID.h header files in the
  221.    ":Mac OS Support:Headers:Universal Headers:" folder.
  222.  
  223. 3. You will need to create a folder by the name
  224.  
  225.     ":Extensions-MCWBuilt"
  226.  
  227.    If this folder does not exist, or the folder name is different,
  228.    the class driver samples will be created in the CodeWarrior folder.
  229.  
  230. Using the CodeWarrior Project Files
  231. ---------------------------------
  232.  
  233.    For the following samples, there is only a single target for 
  234.    each project:
  235.  
  236.    CompositeClassDriver
  237.    KeyboardModule
  238.    MouseModule
  239.    UniversalModule
  240.    USBKeypad
  241.    USBModem
  242.    USBTabletModule
  243.  
  244.    For the PrinterClassDriver example, compile the targets in 
  245.    the following order
  246.  
  247.   1. PrinterClassDRVR - creates the 68K DRVR resource
  248.   2. PrintClassDriver - creates the USB PrintClassDriver module
  249.   3. ChooserPack.rsrc - creates the "PACK" resource
  250.   4. USB Chooser Driver - creates the Chooser extension for the 
  251.      USB printer
  252.    
  253.    For the USBSampleStorageDriver example, compile the targets in 
  254.    the following order
  255.  
  256.   1. USBStorageClassDriver - creates the USB StorageClassDriver module
  257.   2. USBStorageClassShim - creates the shim module which loads the unit
  258.                            table driver when the device is attached
  259.      USBStorageClassUTDriver - auto built into shim - native driver
  260.                            compiled as a resource into shim file.   
  261.        
  262. Known Issues
  263. ------------
  264.  
  265. The following is a list of known issues with this release of the USB DDK.
  266.  
  267.   - If you install this release of USB 1.4f3 directly without adding the 'usbx' (ID = 1984) resource, then USB will not load and an alert message is displayed. Refer to the instructions above in section "Installing the Mac OS USB Software" on how to modify the "USB Support" file so that it will function correctly.
  268.  
  269.   - The USBSampleStorageDriver does not correctly demonstrate how to handle a hot unplug situation. This sample will be updated to demonstrate how this situation should be properly handled. The existing sample sets up a Timer Task which when fired makes a call to SystemTask.  The call to SystemTask is not supported from an interrupt context.
  270.  
  271.   - Apple USB Audio support will only function on Macintosh systems with built-in USB AND with Mac OS 9.0 or greater installed. The Sound Manager components required to support the USB Audio devices are built into the Mac OS ROM file, which is not accessible by Macintosh systems that do not have USB built-in.
  272.  
  273. Contact / Marketing Information
  274. -------------------
  275.  
  276.   Mac OS USB DDK Upgrades and latest information:
  277.   
  278.   For the latest information on the Mac OS USB DDK, refer to the Mac OS USB web page. The latest shipping and pre-release versions of Mac OS USB will be accessible there.
  279.   
  280.    <http://developer.apple.com/hardware/usb/>
  281.  
  282.      Check the Developer Development Kits web page for    other DDKs which you may need. The web page is
  283.         
  284.          <http://developer.apple.com/sdk/>
  285.  
  286.   For Bug Reports:
  287.  
  288.     To ensure the appropriate data is collected, please use the Bug Reporter  
  289.     to send us your bug reports. The Bug Reporter can be found at: 
  290.  
  291.     <http://developer.apple.com/bugreporter>
  292.  
  293.     When reporting problems, please include the machine configuration, 
  294.     including the vendor of the PCI USB card which you have tested with.
  295.  
  296.   For Technical Questions:
  297.  
  298.                 For generic Mac OS USB questions, submit them to the Mac OS USB 
  299.     Developer mailing list. Refer to the section above "Keeping up to date 
  300.     on Mac OS USB" for information on how to subscribe to this mailing list.
  301.     Often questions can be answered by someone on the mailing list.
  302.  
  303.  
  304.                 If your question is not answered on the mailing list, or if your question 
  305.     is proprietary, contact Worldwide Developer with purchased development-level 
  306.     technical support incidents at
  307.  
  308.     <mailto:dts@apple.com>
  309.  
  310.     Technical support incidents are bundled in our Premier and Select 
  311.     Developer programs. For information about joining our programs, 
  312.     please visit our Apple Developer Connection web site at 
  313.  
  314.     <http://developer.apple.com/membership/descriptions.html>
  315.  
  316.     If you have never purchased a technical support incident and would like 
  317.     to find out how to do so, please visit the following site: 
  318.  
  319.     <http://developer.apple.com/programs/techsupport.html> 
  320.  
  321.     
  322.   Comments, Suggestions and Enhancement Requests
  323.  
  324.     Please send all comments and suggestions regarding the Mac OS USB DDK to
  325.     
  326.     <mailto:usb@apple.com>
  327.  
  328.     All email sent to this address will be read, however, we will not be to
  329.     respond to all of your comments and suggestions.
  330.  
  331.         
  332.   Marketing Information:
  333.  
  334.     Registering Your Product - Apple provides the Macintosh Products Guide page 
  335.     as a reference source for all Macintosh Products. You can register your USB 
  336.     Product with the Macintosh Products Guide, by going to the Product 
  337.     Submission Form web page and and submitting the requested information. The
  338.     Macintosh Products Guide web page address is
  339.  
  340.     <http://guide.apple.com/>
  341.  
  342.     The Product Submission Form web page address is
  343.  
  344.     <http://submit.macsoftware.apple.com/SubmissionChoice.html>
  345.  
  346.  
  347.     Licensing Apple Software / Logo - If you will need to license Apple software, 
  348.     refer to the Apple Software License web page a listing of licensable software 
  349.     and for the procedure to obtain the license. The Mac logo is also licensable 
  350.     from the Apple Software License web page. The Apple Software License web page
  351.     address is 
  352.  
  353.     <http://developer.apple.com/mkt/swl/>
  354.  
  355.     To display the USB logo, contact the USB IF at the following web page
  356.  
  357.     <http://www.usb.org/developers/>
  358.  
  359.